Deploy user docs via Travis on release#701
Conversation
|
We can make this branch based instead of tag based. e.g., have another branch named |
That would be possible too, we can do that. Although the branch would probably only be used specifically for deploying documentation (since it doesn't fit our current release flow, as version tags are superior to a dedicated release branch). |
I see. Let's stick with the tags then. |
There was a problem hiding this comment.
Have tested it and works. We would need to set up a GITHUB_TOKEN on travis for the repository and make sure only releases should have tags.
EDIT: Additionally, developers with travis set up on their fork, with their GITHUB_TOKEN set, should not push any tags that match the vx.x.x format. Unless we have push rights removed from markbind.github.io.git
As a precautionary measure, we should configure MarkBind/markbind.github.io.git so that only the Team Lead (@yamgent) has push permissions to it. |
The actual account behind the pushing is actually @traviscibot though (see aefca73). Restricting the permission to just the bot isn't sufficient because anyone else could still invoke Travis for pushing. |
I believe the concern is specifically:
Then a push to any branch on their fork with a tag matching |
Got it, I got confused with how the GitHub tokens work, my apologies. I don't think anyone on the @MarkBind/cs3282-developers team has push rights to markbind.github.io.git in the first place, so I think it should be fine. |
|
Works nicely, deployment of MarkBind documentation is now automated. 👍 But on a side note:
There is actually a very simple solution to this, by using the While I have push rights to |
What is the purpose of this pull request? (put "X" next to an item, remove the rest)
• [X] Other, please explain: DevOps enhancement
Closes #688.
What is the rationale for this request?
Since we have implemented
markbind deploy --travis, we can now deploy our own user documentation automatically on release with Travis.What changes did you make? (Give an overview)
I added a
deployphase to.travis.ymlthat will build and deploy the user docs on release (a commit with a tag matching the patternvx.x.x).Testing instructions:
vx.x.xshould trigger the deploy stage. It will fail sinceGITHUB_TOKENshould not be set, but this is expected.